Lakehouse 구축을 위한 K8S 디자인패턴

개요

빅데이터 환경을 위한 쿠버네티스 구축은 MSA 앱 서비스를 위한 구축과는 여러가지 차이가 있을 수 있습니다. 인프라, 네트워크 설정, dns, cni, 로드밸런싱 등 여러 구성요소에 대한 성능 검증이 선결되어야 합니다. 호스트 장비 자체에 대한 제약도 있을 수 있고, 분산 처리 과정에서 발생하는 부하에 대한 고려도 필요합니다. SK 하이닉스의 Lakehouse 구축 과정에서 배우고 경험했던 사례를 몇 가지 디자인 패턴으로 정리했습니다. 쿠버네티스 설치 관점에서의 주의 사항, 컴포넌트 선택, 네트워크 구성, CI/CD, YAML 파일의 테스트, 의존성 관리, 통합 테스트, 회귀 테스트, 그리고 YAML 구성 자체의 주요 디자인 패턴등 다양한 설계 고민이 필요합니다. 다양한 빅데이터 컴포넌트를 플랫폼 서비스로 배포하다보면 품질 관리에 대한 문제가 가장 중요한 이슈가 됩니다. 특히 의존성 관리는 이미지화된 Docker 파일에서 블랙박스화되기 때문에 사전에 추적하지 않으면 어떤 문제가 발생할지 찾아내기 어렵습니다. 이와 같이 개발과 운영 과정에서 느꼈던 다양한 사례를 공유합니다.

참고